/* pow.t    PURCHASE ORDER WRITE TRIGGER                              */
/*Copyright 1986-2002 QAD Inc., Carpinteria, CA, USA.                 */
/*All rights reserved worldwide.  This is an unpublished work.        */
/*V8:ConvertMode=NoConvert */
/*********************************************************************/
/*  Program :pow.t                                                   */
/*  Author  :Ben Holmes                                              */
/*  Date    :12/19/95                                                */
/*  !Description : po_mstr WRITE trigger program                     */
/*          : In order to enhance this trigger to support additional */
/*          : interfaces, add a DO-END block similar to the one      */
/*          : used for the Warehousing Interface to (1) check for the*/
/*          : need to continue processing; (2) move the relevant     */
/*          : fields to an appropriate work area; and (3) call       */
/*          : one or more subprograms to continue processing.        */
/*          : This .t program should remain short, relying on        */
/*          : subprograms to perform most of the work.               */
/*********************************************************************/
/*                             MODIFY LOG                            */
/*********************************************************************/
/*Revision 8.5          Last Modified:  12/19/95 BY: BHolmes *J0FY*  */
/*Revision 8.5          Last Modified:  07/27/96 BY: fwy     *J12B*  */
/*Revision 8.5          Last Modified:  01/07/97 BY: jpm     *J1DM*  */
/*Revision 9.1          Last Modified:  08/13/00 BY: *N0KQ* myb       */
/*                                                                   */
/*                                                                   */
/*********************************************************************/

TRIGGER PROCEDURE FOR WRITE OF PO_MSTR OLD BUFFER OLD_PO_MSTR.

/*J12B  if not can-find(first whl_mstr where whl_mstr.whl_act no-lock) */
/*J12B  then leave. */

    {mfdeclre.i }
    define new shared work-table wf_old_po_mstr like po_mstr.
    define new shared variable w-recid as recid.
    define new shared variable w-site-loc-id like whl_mstr.whl_src_dest_id.

    define variable w-file as character format "x(24)".


    /* Warehousing Interface processing */

    WI:
    do:

    /* If there is no active external warehouse that is flagged to
    receive purchase order export transactions, then do not process */
/*J12B*/    if not can-find(first whl_mstr no-lock
/*J12B*/        where whl_mstr.whl_act and whl_mstr.whl_po_exp)
/*J12B*/    then leave WI.

    /* If this is a blanket purchase order, then do not process */
        if old_po_mstr.po_type = "B"
          or   po_mstr.po_type = "B"
        then leave WI.

    /* If no pertinent fields have been changed, then do not process */
/*J12B*/    if   (old_po_mstr.po_nbr      = po_mstr.po_nbr
/*J12B*/      and old_po_mstr.po_vend     = po_mstr.po_vend
/*J12B*/      and old_po_mstr.po_ord_date = po_mstr.po_ord_date
/*J12B*/      and old_po_mstr.po_due_date = po_mstr.po_due_date
/*J12B*/      and old_po_mstr.po_rmks     = po_mstr.po_rmks
/*J12B*/      and old_po_mstr.po_ship     = po_mstr.po_ship
/*J12B*/      and old_po_mstr.po_fsm_type = po_mstr.po_fsm_type
/*J12B*/      and old_po_mstr.po_sched    = po_mstr.po_sched
/*J12B*/      and old_po_mstr.po_stat     = po_mstr.po_stat
/*J12B*/      and old_po_mstr.po_user1    = po_mstr.po_user1
/*J12B*/      and old_po_mstr.po_user2    = po_mstr.po_user2
/*J12B*/      and old_po_mstr.po_cmtindx  = po_mstr.po_cmtindx)
/*J12B*/    then leave WI.

    /* Move old po_mstr values to work table for subsequent processing */
        assign w-recid = recid(po_mstr).
        create wf_old_po_mstr.
        if recid(wf_old_po_mstr)= -1 then .
        assign
            wf_old_po_mstr.po_nbr       = old_po_mstr.po_nbr
            wf_old_po_mstr.po_vend      = old_po_mstr.po_vend
            wf_old_po_mstr.po_ord_date  = old_po_mstr.po_ord_date
            wf_old_po_mstr.po_due_date  = old_po_mstr.po_due_date
            wf_old_po_mstr.po_rmks      = old_po_mstr.po_rmks
            wf_old_po_mstr.po_ship      = old_po_mstr.po_ship
        wf_old_po_mstr.po_fsm_type  = old_po_mstr.po_fsm_type
            wf_old_po_mstr.po_sched     = old_po_mstr.po_sched
            wf_old_po_mstr.po_stat      = old_po_mstr.po_stat
            wf_old_po_mstr.po_user1     = old_po_mstr.po_user1
            wf_old_po_mstr.po_user2     = old_po_mstr.po_user2
/*J12B*/        wf_old_po_mstr.po_cmtindx   = old_po_mstr.po_cmtindx
        .

    /* Call subprogram to create export transactions for warehouses */
        w-file = "wipow.p".
/*J1DM*/ /* {gprun.i ""wipow.p""} */
/*J1DM*/    {gprunmo.i &module="WI"
                       &program="wipow.p"}

/*J12B*/end. /* WI */

/* fdn 2004/10/28 Modify Record processing */
HK:
do:
    if can-find(first dt_mstr where dt_table = "po_mstr" and dt_type = "SYNC") then
        run CreateSyncFlag(input "MOD", input recid(po_mstr), input "po_mstr").

    if not can-find ( first dt_mstr where dt_table = "po_mstr" and dt_type = "MOD" ) then leave HK.
    
    if not can-find ( first wf_old_po_mstr ) then do:
        create wf_old_po_mstr.
        if recid(wf_old_po_mstr)= -1 then .
    end.
    
    buffer-copy old_po_mstr to wf_old_po_mstr no-error.

    for each dt_mstr no-lock where dt_table = "po_mstr" and dt_type = "MOD" :
    
        case dt_field :

            when "po_nbr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_nbr, input po_mstr.po_nbr,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_vend" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_vend, input po_mstr.po_vend,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ship" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_ship, input po_mstr.po_ship,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ord_date" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_ord_date), input string(po_mstr.po_ord_date),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_rmks" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_rmks, input po_mstr.po_rmks,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_cr_terms" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_cr_terms, input po_mstr.po_cr_terms,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_buyer" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_buyer, input po_mstr.po_buyer,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_shipvia" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_shipvia, input po_mstr.po_shipvia,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_fob" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_fob, input po_mstr.po_fob,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_bill" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_bill, input po_mstr.po_bill,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad04" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qad04), input string(po_mstr.po__qad04),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_partial" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_partial), input string(po_mstr.po_partial),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_rev" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_rev), input string(po_mstr.po_rev),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_stat" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_stat, input po_mstr.po_stat,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ap_acct" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_ap_acct, input po_mstr.po_ap_acct,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ap_cc" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_ap_cc, input po_mstr.po_ap_cc,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_frt" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_frt), input string(po_mstr.po_frt),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_serv_chg" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_serv_chg), input string(po_mstr.po_serv_chg),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_spec_chg" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_spec_chg), input string(po_mstr.po_spec_chg),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_tax_pct[1]" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_tax_pct[1]), input string(po_mstr.po_tax_pct[1]),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_disc_pct" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_disc_pct), input string(po_mstr.po_disc_pct),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_prepaid" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_prepaid), input string(po_mstr.po_prepaid),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_contact" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_contact, input po_mstr.po_contact,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_confirm" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_confirm), input string(po_mstr.po_confirm),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_cmtindx" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_cmtindx), input string(po_mstr.po_cmtindx),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_print" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_print), input string(po_mstr.po_print),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_cls_date" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_cls_date), input string(po_mstr.po_cls_date),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_taxable" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_taxable), input string(po_mstr.po_taxable),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_user1" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_user1, input po_mstr.po_user1,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_user2" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_user2, input po_mstr.po_user2,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_curr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_curr, input po_mstr.po_curr,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ex_rate" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_ex_rate), input string(po_mstr.po_ex_rate),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_lang" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_lang, input po_mstr.po_lang,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_fst_id" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_fst_id, input po_mstr.po_fst_id,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_pst_id" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_pst_id, input po_mstr.po_pst_id,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_pst" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_pst), input string(po_mstr.po_pst),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_duty_type" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_duty_type, input po_mstr.po_duty_type,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad05" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qad05), input string(po_mstr.po__qad05),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad07" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__qad07, input po_mstr.po__qad07,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad08" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__qad08, input po_mstr.po__qad08,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_site" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_site, input po_mstr.po_site,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_blanket" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_blanket, input po_mstr.po_blanket,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qad01), input string(po_mstr.po__qad01),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qad02), input string(po_mstr.po__qad02),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad03" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__qad03, input po_mstr.po__qad03,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_contract" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_contract, input po_mstr.po_contract,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_del_to" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_del_to, input po_mstr.po_del_to,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_due_date" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_due_date), input string(po_mstr.po_due_date),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_eff_strt" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_eff_strt), input string(po_mstr.po_eff_strt),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_eff_to" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_eff_to), input string(po_mstr.po_eff_to),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_est_value" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_est_value), input string(po_mstr.po_est_value),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad06" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qad06), input string(po_mstr.po__qad06),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_project" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_project, input po_mstr.po_project,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_rel_nbr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_rel_nbr), input string(po_mstr.po_rel_nbr),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_req_id" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_req_id, input po_mstr.po_req_id,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_type" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_type, input po_mstr.po_type,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_user_id" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_user_id, input po_mstr.po_user_id,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qad09" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qad09), input string(po_mstr.po__qad09),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_release" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_release), input string(po_mstr.po_release),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_recurr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_recurr), input string(po_mstr.po_recurr),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_cycl" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_cycl, input po_mstr.po_cycl,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr01, input po_mstr.po__chr01,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr02, input po_mstr.po__chr02,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr03" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr03, input po_mstr.po__chr03,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr04" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr04, input po_mstr.po__chr04,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr05" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr05, input po_mstr.po__chr05,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr06" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr06, input po_mstr.po__chr06,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr07" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr07, input po_mstr.po__chr07,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr08" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr08, input po_mstr.po__chr08,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr09" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr09, input po_mstr.po__chr09,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__chr10" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__chr10, input po_mstr.po__chr10,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__dte01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__dte01), input string(po_mstr.po__dte01),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__dte02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__dte02), input string(po_mstr.po__dte02),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__dec01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__dec01), input string(po_mstr.po__dec01),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__dec02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__dec02), input string(po_mstr.po__dec02),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__log01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__log01), input string(po_mstr.po__log01),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_inv_mthd" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_inv_mthd, input po_mstr.po_inv_mthd,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_fix_rate" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_fix_rate), input string(po_mstr.po_fix_rate),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ent_ex" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_ent_ex), input string(po_mstr.po_ent_ex),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_tax_date" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_tax_date), input string(po_mstr.po_tax_date),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_fsm_type" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_fsm_type, input po_mstr.po_fsm_type,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_bank" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_bank, input po_mstr.po_bank,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_pr_list" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_pr_list, input po_mstr.po_pr_list,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_tax_env" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_tax_env, input po_mstr.po_tax_env,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_sched" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_sched), input string(po_mstr.po_sched),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_pr_list2" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_pr_list2, input po_mstr.po_pr_list2,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_tax_usage" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_tax_usage, input po_mstr.po_tax_usage,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_fix_pr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_fix_pr), input string(po_mstr.po_fix_pr),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_sch_mthd" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_sch_mthd, input po_mstr.po_sch_mthd,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_taxc" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_taxc, input po_mstr.po_taxc,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_priced_dt" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_priced_dt), input string(po_mstr.po_priced_dt),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_pricing_dt" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_pricing_dt), input string(po_mstr.po_pricing_dt),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ers_opt" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_ers_opt, input po_mstr.po_ers_opt,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_pr_lst_tp" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_pr_lst_tp), input string(po_mstr.po_pr_lst_tp),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qadc01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__qadc01, input po_mstr.po__qadc01,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qadc02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po__qadc02, input po_mstr.po__qadc02,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qadd01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qadd01), input string(po_mstr.po__qadd01),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qadd02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qadd02), input string(po_mstr.po__qadd02),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qadi01" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qadi01), input string(po_mstr.po__qadi01),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po__qadi02" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po__qadi02), input string(po_mstr.po__qadi02),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_so_nbr" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_so_nbr, input po_mstr.po_so_nbr,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_is_btb" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_is_btb), input string(po_mstr.po_is_btb),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_so_hold" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_so_hold), input string(po_mstr.po_so_hold),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_xmit" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_xmit, input po_mstr.po_xmit,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ex_rate2" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_ex_rate2), input string(po_mstr.po_ex_rate2),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ex_ratetype" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_ex_ratetype, input po_mstr.po_ex_ratetype,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_exru_seq" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_exru_seq), input string(po_mstr.po_exru_seq),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_ap_sub" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_ap_sub, input po_mstr.po_ap_sub,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_crt_int" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_crt_int), input string(po_mstr.po_crt_int),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_consignment" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_consignment), input string(po_mstr.po_consignment),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_max_aging_days" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_max_aging_days), input string(po_mstr.po_max_aging_days),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_app_owner" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_app_owner, input po_mstr.po_app_owner,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_tot_terms_code" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_po_mstr.po_tot_terms_code, input po_mstr.po_tot_terms_code,
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

            when "po_translt_days" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_po_mstr.po_translt_days), input string(po_mstr.po_translt_days),
                    input recid(po_mstr), input po_mstr.po_nbr, input "", input "", input "",
                    input "", input "", input "", input "").

        end.

    end.
end.

{hkdttrans.i}
